import type { EventHandler, EventHandlerRequest } from "h3";

/**
 * @description: 官方例子，用于拦截请求
 */
export const defineWrappedResponseHandler = <T extends EventHandlerRequest, D>(
  handler: EventHandler<T, D>
): EventHandler<T, D> =>
  defineEventHandler<T>(async (event) => {
    try {
      // 在路由处理程序之前执行某些操作
      const response = await handler(event);
      // 在路由处理程序之后执行某些操作
      return { response };
    } catch (err) {
      // 错误处理
      return { err };
    }
  });

  